popover: Change default for cascade-popdown
authorMatthias Clasen <mclasen@redhat.com>
Tue, 3 Nov 2020 15:23:34 +0000 (10:23 -0500)
committerMatthias Clasen <mclasen@redhat.com>
Tue, 3 Nov 2020 16:00:32 +0000 (11:00 -0500)
We've found a number of cases where this cascading
has unexpected side-effects. So, turn it off by
default, and only set it for menus.

demos/widget-factory/widget-factory.ui
gtk/gtkpopover.c
gtk/gtkpopovermenu.c

index 36bee582cf14d354d87ac58d5b82fe8a1b46c719..c4410a1ab2ee24deab5857170a5d5c94a9e0ac8c 100644 (file)
@@ -3220,7 +3220,7 @@ bad things might happen.</property>
           <object class="GtkMenuButton">
             <property name="halign">end</property>
             <property name="icon-name">emblem-system-symbolic</property>
-            <property name="menu-model">gear_menu</property>
+            <property name="menu-model">gear_menu_model</property>
             <property name="tooltip-text">This is a menu button</property>
             <layout>
               <property name="column">1</property>
index 1cfe499f52541dbd568858845af48bfed7ba84d1..2a17b677dafa98fc5828790d1fc70d404da737e5 100644 (file)
@@ -839,7 +839,7 @@ gtk_popover_init (GtkPopover *popover)
   priv->final_position = GTK_POS_BOTTOM;
   priv->autohide = TRUE;
   priv->has_arrow = TRUE;
-  priv->cascade_popdown = TRUE;
+  priv->cascade_popdown = FALSE;
 
   controller = gtk_event_controller_key_new ();
   g_signal_connect_swapped (controller, "key-pressed", G_CALLBACK (gtk_popover_key_pressed), popover);
@@ -1674,7 +1674,7 @@ gtk_popover_class_init (GtkPopoverClass *klass)
       g_param_spec_boolean ("cascade-popdown",
                             P_("Cascade popdown"),
                             P_("Wether the popover pops down after a child popover"),
-                            TRUE,
+                            FALSE,
                             GTK_PARAM_READWRITE|G_PARAM_EXPLICIT_NOTIFY);
 
   g_object_class_install_properties (object_class, NUM_PROPERTIES, properties);
index 751d14c176ac6dbbe487c120d1595084a02c4764..c3f39ed0ce4efe151bf6e2bfd4e6d9695990a519 100644 (file)
@@ -309,6 +309,7 @@ gtk_popover_menu_init (GtkPopoverMenu *popover)
   g_free (controllers);
 
   gtk_popover_disable_auto_mnemonics (GTK_POPOVER (popover));
+  gtk_popover_set_cascade_popdown (GTK_POPOVER (popover), TRUE);
 }
 
 static void